A Scalable Flow-Sensitive Points-To Analysis

نویسندگان

  • Jonas Lundberg
  • Welf Löwe
چکیده

Points-to analysis for large object-oriented systems is currently too imprecise or too slow. This prevents or hampers many useful client analyses, refactorings, or optimizations. In this paper, we present an SSA-based approach to points-to analysis that simulates the actual execution of a program. It is precise since it is both locally and globally flow-sensitive, more precise by construction compared to other scalable approaches. We confirm this statement with experiments. The experiments also show that in practice our approach is also more efficient (on average) in spite of a higher worst-case time complexity.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Scalable Flow-Sensitive Pointer Analysis for Java with Strong Updates

The ability to perform strong updates is the main contributor to the precision of flow-sensitive pointer analysis algorithms. Traditional flow-sensitive pointer analyses cannot strongly update pointers residing in the heap. This is a severe restriction for Java programs. In this paper, we propose a new flow-sensitive pointer analysis algorithm for Java that can perform strong updates on heap-ba...

متن کامل

Scalable Context-Sensitive Points-to Analysis Using Multi-dimensional Bloom Filters

Context-sensitive points-to analysis is critical for several program optimizations. However, as the number of contexts grows exponentially, storage requirements for the analysis increase tremendously for large programs, making the analysis non-scalable. We propose a scalable flow-insensitive context-sensitive inclusion-based points-to analysis that uses a specially designed multi-dimensional bl...

متن کامل

Parallel Flow-Sensitive Points-to Analysis

Points-to analysis is a fundamental requirement for many program analyses, optimizations, and debugging/verification tools. However, finding an effective balance between performance, scalability and precision in points-to analysis remains a major challenge. Many flow-sensitive algorithms achieve a desirable level of precision, but are impractical for use on large software. Likewise, many flow-i...

متن کامل

SPAS: Scalable Path-Sensitive Pointer Analysis on Full-Sparse SSA

We present a new SPAS (ScalablePAth-Sensitive)framework for resolving points-to sets in C programs that exploits recent advances in pointer analysis. SPAS enables intraprocedural path-sensitivity to be obtained in flow-sensitive and context-sensitive (FSCS) techniques scalably, by using BDDs to manipulate program paths and by performing pointer analysis level-by-level on a full-sparse SSA repre...

متن کامل

Partial Flow Sensitivity

Compiler optimizations need precise and scalable analyses to discover program properties. We propose a partially flow-sensitive framework that tries to draw on the scalability of flow-insensitive algorithms while providing more precision at some specific program points. Provided with a set of critical nodes — basic blocks at which more precise information is desired — our partially flow-sensiti...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2006